package com.example.xianglilai_end.Mapper;
import com.example.xianglilai_end.Bean.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface BatteriesMapper {
    // 获取一个表的device_id列表
    List<DeviceId> getDeviceId(@Param("table_name")String table_name);

    List<Gps> getGps(@Param("table_name")String table_name, @Param("start")int startTime, @Param("end")int endTime);

    /* 获取电池详细信息 */
    BatteryDetail getBatteryDetail(@Param("device_id")int device_id, @Param("table_name")String table_name);

    /* 获取一个表内所有电池的详细信息 */
    List<BatteryDetail> getBatteriesDetail(@Param("table_name")String table_name);
    /* 获取电池单体电压列表 */
    SingleVoltage getBatteryVol(@Param("device_id")int device_id, @Param("table_name")String table_name);

    /* 获取某一段时间内所有电池和对应的gps --- 用来计算区域数量排名*/
    List<Gps> getBatteryGps(@Param("bms_table")String bms_table, @Param("gps_table")String gps_table,  @Param("time")int time);

    /*根据单个GPS表计算区域电动车数量*/
    List<Gps> getbGps(@Param("gps_table")String gps_table);

    /* 获取某张表所有电池的capacity */
    List<BatteryCapacity> getBatteryCapacity(@Param("bms_table")String bms_table);

    List<Gps> getSingledayGps();


}
